package com.shop.cereshop.commons.domain.report;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;

/**
 * cere_report_record 举报记录实体类
 *
 * @author
 */
@Data
@ApiModel(value = "CereReportRecord", description = "举报记录实体类")
public class CereReportRecord implements Serializable {

    /**
     * 举报ID
     */
    @ApiModelProperty(value = "举报ID")
    @TableId(type = IdType.AUTO)
    private Long reportId;

    /**
     * 举报人用户ID
     */
    @ApiModelProperty(value = "举报人用户ID")
    private Long reporterUserId;

    /**
     * 被举报人用户ID
     */
    @ApiModelProperty(value = "被举报人用户ID")
    private Long reportedUserId;

    /**
     * 举报目标类型：1-动态 2-视频 3-评论 4-用户
     */
    @ApiModelProperty(value = "举报目标类型：1-动态 2-视频 3-评论 4-用户")
    private Integer targetType;

    /**
     * 举报目标ID（动态ID/视频ID/评论ID/用户ID）
     */
    @ApiModelProperty(value = "举报目标ID（动态ID/视频ID/评论ID/用户ID）")
    private Long targetId;

    /**
     * 举报类型ID（关联字典表）
     */
    @ApiModelProperty(value = "举报类型ID（关联字典表）")
    private Long reportTypeId;

    /**
     * 举报原因描述
     */
    @ApiModelProperty(value = "举报原因描述")
    private String reportReason;

    /**
     * 举报证据图片，多个用逗号分隔
     */
    @ApiModelProperty(value = "举报证据图片，多个用逗号分隔")
    private String reportImages;

    /**
     * 举报状态：0-待审核 1-审核中 2-已处理 3-已驳回
     */
    @ApiModelProperty(value = "举报状态：0-待审核 1-审核中 2-已处理 3-已驳回")
    private Integer reportStatus;

    /**
     * 审核人ID
     */
    @ApiModelProperty(value = "审核人ID")
    private Long auditUserId;

    /**
     * 审核时间
     */
    @ApiModelProperty(value = "审核时间")
    private String auditTime;

    /**
     * 审核结果：1-违规 2-不违规
     */
    @ApiModelProperty(value = "审核结果：1-违规 2-不违规")
    private Integer auditResult;

    /**
     * 审核备注
     */
    @ApiModelProperty(value = "审核备注")
    private String auditRemark;

    /**
     * 处理结果：1-删除内容 2-警告用户 3-封禁用户 4-无处理
     */
    @ApiModelProperty(value = "处理结果：1-删除内容 2-警告用户 3-封禁用户 4-无处理")
    private Integer handleResult;

    /**
     * 处理备注
     */
    @ApiModelProperty(value = "处理备注")
    private String handleRemark;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    private String createTime;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    private String updateTime;

    private static final long serialVersionUID = 1L;
}
